13 research outputs found

    Communion: a new strategy for memory management in high-performance computer systems

    Get PDF
    Modern computers present a big gap between peak performance and sustained performance. There are many reasons for this situation, but mainly involving an inefficient usage of computational resources. Nowadays the memory system is the most critical component because of its growing inability to keep up with the processor requests. Technological trends have produced a large and growing gap between CPU speeds and DRAM speeds. Much research has focused this memory system problem, including program optimizing techniques, data locality enhancement, hardware and software prefetching, decoupled architectures, mutithreading, speculative loads and execution. These techniques have got a relative success, but they focus only one component in the hardware or software systems. We present here a new strategy for memory management in high-performance computer systems, named COMMUNION. The basic idea behind this strategy is cooperation. We introduce some interaction possibilities among system programs that are responsible to generate and execute application programs. So, we investigate two specific interactions: between the compiler and the operating system, and among the compiling system components. The experimental results show that it’s possible to get improvements of about 10 times in execution time, and about 5 times in memory demand. In the interaction between compiler and operating system, named Compiler-Aided Page Replacement (CAPR), we achieved a reduction of about 10% in space-time product, with an increase of only 0.5% in the total execution time. All these results show that it’s possible to manage main memory with a better efficiency than current systems.Eje: Procesamiento distribuido y paralelo. Tratamiento de señalesRed de Universidades con Carreras en Informática (RedUNCI

    Communion: a new strategy for memory management in high-performance computer systems

    Get PDF
    Modern computers present a big gap between peak performance and sustained performance. There are many reasons for this situation, but mainly involving an inefficient usage of computational resources. Nowadays the memory system is the most critical component because of its growing inability to keep up with the processor requests. Technological trends have produced a large and growing gap between CPU speeds and DRAM speeds. Much research has focused this memory system problem, including program optimizing techniques, data locality enhancement, hardware and software prefetching, decoupled architectures, mutithreading, speculative loads and execution. These techniques have got a relative success, but they focus only one component in the hardware or software systems. We present here a new strategy for memory management in high-performance computer systems, named COMMUNION. The basic idea behind this strategy is cooperation. We introduce some interaction possibilities among system programs that are responsible to generate and execute application programs. So, we investigate two specific interactions: between the compiler and the operating system, and among the compiling system components. The experimental results show that it’s possible to get improvements of about 10 times in execution time, and about 5 times in memory demand. In the interaction between compiler and operating system, named Compiler-Aided Page Replacement (CAPR), we achieved a reduction of about 10% in space-time product, with an increase of only 0.5% in the total execution time. All these results show that it’s possible to manage main memory with a better efficiency than current systems.Eje: Procesamiento distribuido y paralelo. Tratamiento de señalesRed de Universidades con Carreras en Informática (RedUNCI

    Communion: a new strategy for memory management in high-performance computer systems

    Get PDF
    Modern computers present a big gap between peak performance and sustained performance. There are many reasons for this situation, but mainly involving an inefficient usage of computational resources. Nowadays the memory system is the most critical component because of its growing inability to keep up with the processor requests. Technological trends have produced a large and growing gap between CPU speeds and DRAM speeds. Much research has focused this memory system problem, including program optimizing techniques, data locality enhancement, hardware and software prefetching, decoupled architectures, mutithreading, speculative loads and execution. These techniques have got a relative success, but they focus only one component in the hardware or software systems. We present here a new strategy for memory management in high-performance computer systems, named COMMUNION. The basic idea behind this strategy is cooperation. We introduce some interaction possibilities among system programs that are responsible to generate and execute application programs. So, we investigate two specific interactions: between the compiler and the operating system, and among the compiling system components. The experimental results show that it’s possible to get improvements of about 10 times in execution time, and about 5 times in memory demand. In the interaction between compiler and operating system, named Compiler-Aided Page Replacement (CAPR), we achieved a reduction of about 10% in space-time product, with an increase of only 0.5% in the total execution time. All these results show that it’s possible to manage main memory with a better efficiency than current systems.Eje: Procesamiento distribuido y paralelo. Tratamiento de señalesRed de Universidades con Carreras en Informática (RedUNCI

    Aplicação de processamento paralelo no problema de reconhecimento de genes

    Get PDF
    Nos últimos anos, a quantidade de dados biológicos em bancos de dados públicos vem aumentando exponencialmente. Como conseqüência, os algoritmos de análises de dados, em especial algoritmos de predição de genes, estão associados a longos tempos de execução. Neste sentido, a computação paralela é um meio eficaz para diminuir o tempo de execução do processamento de tais análises. Neste artigo, apresentaremos uma solução paralela para o tratamento do problema de reconhecimento de genes, problema este de grande relevância biológica e computacional. Para isso utilizaremos um algoritmo de predição de genes conhecido por Sim4. Este algoritmo foi projetado para alinhar seqüências de DNA complementar (cDNA) com seqüências de DNA genômico, e produzir como resultado uma tabela contendo as localizações das regiões que codificam proteínas.Eje: IV - Workshop de procesamiento distribuido y paraleloRed de Universidades con Carreras en Informática (RedUNCI

    Aplicação de processamento paralelo no problema de reconhecimento de genes

    Get PDF
    Nos últimos anos, a quantidade de dados biológicos em bancos de dados públicos vem aumentando exponencialmente. Como conseqüência, os algoritmos de análises de dados, em especial algoritmos de predição de genes, estão associados a longos tempos de execução. Neste sentido, a computação paralela é um meio eficaz para diminuir o tempo de execução do processamento de tais análises. Neste artigo, apresentaremos uma solução paralela para o tratamento do problema de reconhecimento de genes, problema este de grande relevância biológica e computacional. Para isso utilizaremos um algoritmo de predição de genes conhecido por Sim4. Este algoritmo foi projetado para alinhar seqüências de DNA complementar (cDNA) com seqüências de DNA genômico, e produzir como resultado uma tabela contendo as localizações das regiões que codificam proteínas.Eje: IV - Workshop de procesamiento distribuido y paraleloRed de Universidades con Carreras en Informática (RedUNCI

    Alguns fatores que influenciam o desempenho de sistemas DSM

    Get PDF
    A tecnologia de cluster, impulsionada pelo advento de redes de alta velocidade, tem se tornado um importante veículo na otimização de aplicações potencialmente paralelizáveis. Existem diversas formas de melhorar o desempenho destas aplicações. Este trabalho, particularmente, aplica uma técnica denominada loop interchange em um programa de multiplicação de matrizes que foi executado sobre um cluster em um sistema DSM, o TreadMarks. Além da influência do algoritmo, outros fatores que afetam o desempenho dos sistemas DSM, como a quantidade de mensagens trocadas entre os vários nós do cluster e o número de máquinas utilizadas durante a execução do programa foram analisados. Os resultados obtidos, após um conjunto de testes realizados, comprovaram a influência que o padrão de acessos á memória exerce sobre o desempenho dos programas. Pequenas alterações na forma como o algoritmo acessa a memória do computador permitiram ganhos de desempenho, para alguns casos, de 100% a 270%.The cluster technology, impelled by the development of high-speed networks, is becoming an important vehicle in the optimization of potentially parallelizable applications. Several forms exist to improve the performance of these applications. This paper, particularly, applies a technique denominated loop interchange in a program of matrix multiplication that was executed on a cluster with the TreadMarks DSM system. Besides the influence of the algorithm, other factors that affect the performance of DSM systems, as the amount of messages changed among the several nodes of the cluster and the number of machines used during the execution of the program, were analyzed. The obtained results, after a group of accomplished tests, proved the influence of the memory access pattern on the performance of the programs. Small alterations in the memory access pattern of the algorithm allowed a performance enhancement, for some cases, from 100% to 270%.Eje: Programación concurrenteRed de Universidades con Carreras en Informática (RedUNCI

    Alguns fatores que influenciam o desempenho de sistemas DSM

    Get PDF
    A tecnologia de cluster, impulsionada pelo advento de redes de alta velocidade, tem se tornado um importante veículo na otimização de aplicações potencialmente paralelizáveis. Existem diversas formas de melhorar o desempenho destas aplicações. Este trabalho, particularmente, aplica uma técnica denominada loop interchange em um programa de multiplicação de matrizes que foi executado sobre um cluster em um sistema DSM, o TreadMarks. Além da influência do algoritmo, outros fatores que afetam o desempenho dos sistemas DSM, como a quantidade de mensagens trocadas entre os vários nós do cluster e o número de máquinas utilizadas durante a execução do programa foram analisados. Os resultados obtidos, após um conjunto de testes realizados, comprovaram a influência que o padrão de acessos á memória exerce sobre o desempenho dos programas. Pequenas alterações na forma como o algoritmo acessa a memória do computador permitiram ganhos de desempenho, para alguns casos, de 100% a 270%.The cluster technology, impelled by the development of high-speed networks, is becoming an important vehicle in the optimization of potentially parallelizable applications. Several forms exist to improve the performance of these applications. This paper, particularly, applies a technique denominated loop interchange in a program of matrix multiplication that was executed on a cluster with the TreadMarks DSM system. Besides the influence of the algorithm, other factors that affect the performance of DSM systems, as the amount of messages changed among the several nodes of the cluster and the number of machines used during the execution of the program, were analyzed. The obtained results, after a group of accomplished tests, proved the influence of the memory access pattern on the performance of the programs. Small alterations in the memory access pattern of the algorithm allowed a performance enhancement, for some cases, from 100% to 270%.Eje: Programación concurrenteRed de Universidades con Carreras en Informática (RedUNCI

    Avaliando o desempenho de aglomerados com biblioteca MPI utilizando benchmark MP Bench

    No full text
    Este trabalho compara o desempenho de aglomerados com 8 e 16 nós com o pacote de benchmarks MPRBench utiliza bibliotecas de passagem de mensagem MPI. O trabalho apresenta uma vis ão a respeito de arquitecturas paralelas, aglomerados, programa ç ã com troca de mensagem e ao final exp õe-se os testes de avalia ç ão e seus resultados. Os resultados dos testes com 2 processos apresentaram comportamentos similares em ambos os aglomerados. Os testes com mais de dois procesos mostram uma rela ç ão entre a quantia de procesos com a queda de desempenho.This work compares the performance between two clusters with 8 and 16 nodes with MPBeanch benchmarks. This paper gives an overview of architecture parallels, clustes, MPI and PVM. The tests with 2 process are similar between both blusters, but when there are more process the performance get down.Eje: Programación concurrenteRed de Universidades con Carreras en Informática (RedUNCI

    Avaliando o desempenho de aglomerados com biblioteca MPI utilizando benchmark MP Bench

    No full text
    Este trabalho compara o desempenho de aglomerados com 8 e 16 nós com o pacote de benchmarks MPRBench utiliza bibliotecas de passagem de mensagem MPI. O trabalho apresenta uma vis ão a respeito de arquitecturas paralelas, aglomerados, programa ç ã com troca de mensagem e ao final exp õe-se os testes de avalia ç ão e seus resultados. Os resultados dos testes com 2 processos apresentaram comportamentos similares em ambos os aglomerados. Os testes com mais de dois procesos mostram uma rela ç ão entre a quantia de procesos com a queda de desempenho.This work compares the performance between two clusters with 8 and 16 nodes with MPBeanch benchmarks. This paper gives an overview of architecture parallels, clustes, MPI and PVM. The tests with 2 process are similar between both blusters, but when there are more process the performance get down.Eje: Programación concurrenteRed de Universidades con Carreras en Informática (RedUNCI

    Avaliando o desempenho de aglomerados com biblioteca MPI utilizando benchmark MP Bench

    No full text
    Este trabalho compara o desempenho de aglomerados com 8 e 16 nós com o pacote de benchmarks MPRBench utiliza bibliotecas de passagem de mensagem MPI. O trabalho apresenta uma vis ão a respeito de arquitecturas paralelas, aglomerados, programa ç ã com troca de mensagem e ao final exp õe-se os testes de avalia ç ão e seus resultados. Os resultados dos testes com 2 processos apresentaram comportamentos similares em ambos os aglomerados. Os testes com mais de dois procesos mostram uma rela ç ão entre a quantia de procesos com a queda de desempenho.This work compares the performance between two clusters with 8 and 16 nodes with MPBeanch benchmarks. This paper gives an overview of architecture parallels, clustes, MPI and PVM. The tests with 2 process are similar between both blusters, but when there are more process the performance get down.Eje: Programación concurrenteRed de Universidades con Carreras en Informática (RedUNCI
    corecore